The Low Density Parity Check Code (LDPC) are known in the art for various applications. LDPC is an advanced error correcting linear code, which is used in encoding and decoding in order to detect and correct errors.
LDPC can achieve similar or better performance than those of turbo codes, with lower decoder complexity.
Soft input soft output decoder and iterative decoding of the received data block approaches can be used in LDPC.
LDPC can be implemented without using an interleaver.
Code rate can be changed in a relatively simple approach while using LDPC.
The matrices, which represent block size and/or code rate, are easy to design, and can be optimized to specific requirements.
Encoding is implemented by combining parity check bits and a data vector, thus creating a unique codeword vector. Upon receiving the codeword vector, it is possible to detect and correct a number of errors.
LDPC can be implemented in OFDMA systems in the encoding and decoding means, for better performance with an easier implementation.
In particular, LDPC can be used in OFDMA systems according to the 802.16 standard.
A codeword vector c, having a size of 1×n, can be found by multiplying the input data vector v, of the size of 1×k, with a Generator matrix G, which is k×n, as follows:c=v*G The codeword, the input data and the Generator matrix's symbols, all belong to a finite Galois Field, preferably they are over the binary field. According to this invention all the symbols are over the binary field GF(2), it is possible though to group several bits and to represent smaller vectors and matrices under other finite Galois Fields as well.
The block Parity Check Matrix, H, is known as the matrix which is orthogonal to the codeword created by G, hence for every valid codeword: c*H′=0, where H′ is the transposed matrix of H:H′(a,b)=H(b,a). The size of H is (n−k)×n.In LDPC, it is possible to derive the codeword c directly from H, without calculating G. It is possible to perform various manipulations in the H matrix, in order to adapt it to the characteristics of required encoding parameters.
Creating H is not trivial and there may be several solutions for the internal initial values of the (n−k)×n components in the H matrix.
LDPC can achieve similar or better performance than those of turbo codes, with lower decoder complexity.
Soft input soft output decoder and iterative decoding of the received data block approaches can be used in LDPC, and it can be implemented without using interleaver.